【glossary】自然言語処理(NLP)

自然言語処理(NLP)とは人間の言語をコンピュータに理解させ、生成させる技術のことです。
簡単に言うとコンピュータに人間の会話を理解して応答させることです。これはロボットを作ることと同意で多くのコンピュータエンジニアの夢でした。

自然言語処理の歴史


その歴史は長く、いくつかの重要な段階を経て現在の先進的な技術に至っています。
(1)初期段階(1950年代 - 1960年代)
この期間は、ルールベースのシステムが主流でした。翻訳システムの開発が特に注目され、最も有名なものが1950年代に開発されたジョージタウン-とIBMの機械翻訳システムです。残念ながら実用レベルではありませんでした。文法やルールでコンピュータに言語を解釈させるのは無理と認識されつつありました。なぜなら人間も文法などを意識して会話している訳ではないからです。

(2)統計的NLP(1980年代 - 2000年代初頭)
統計的な手法が有効と認識される次期です。特に隠れマルコフモデル((Hidden Markov Model, HMM))や統計的機械翻訳が多く研究されました。しかし大量のデータや大きな処理能力を要する計算機が必要であり当時は有効性が証明できませんでした。当時は貧弱な処理能力のコンピュータで多くの成果は出せませんでした。

(3)ディープラーニング(2010年代 - 現在)
ディープラーニング技術がNLP分野に革新をもたらしています。ディープラーニングは人間の脳の神経ネットワークを模倣したアルゴリズムです。大量の入力データから特徴を抽出します。この手法の登場により、NLPの精度は大幅に向上しました。画像処理などは一気に正確になりました。特に2017年に検索エンジン大手のGoogleが発表したトランスフォーマーというモデルは多くの衝撃を与えました。("Attention Is All You Need"という論文を参照ください)
このモデルは大量のテキストデータから文の意味を抽出するのに優れています。

(4)トランスフォーマーベースの大規模モデル(2018年 - 現在)
OpenAIのGPT(Generative Pretrained Transformer)やGoogleのBERT(Bidirectional Encoder Representations from Transformers)などの大規模なトランスフォーマーベースのモデルが躍進しています。これらのモデルは数十億から数百億のパラメータを持つ巨大なネットワークです。主にインターネット上のテキストデータから人間の言語をパターンを学習します。精度が非常に高く、会話の相手がAIなのか人間なのかもやは区別は困難です。










個人的に独自に調査した事項をまとめています。各ベンダーとは全く関係がありません。
内容に誤りがある場合や情報が古くなっている場合があります。その場合でも修正されるとは限りません。
参考としてサイト閲覧ください。万が一誤りがあり損失等が発生しても保証しません。あくまでも自己責任でサイトを閲覧ください。